Scrambling of digital signals is routinely used in data communications to ensure transitions in the received data signal and, thereby, avoid loss of synchronization in the data recovery process. Specifically, given a data communication system comprising synchronous modems, each modem conventionally includes both a transmitter and a receiver section. In principle, synchronous data communication comprises at least one transmitter of a first synchronous modem sending data to the receiver of the second synchronous modem and vice versa. The transmitter and receiver sections within the modem include a scrambler and a descrambler, respectively. Since the receiver clock is derived from the received data, the data must contain enough transitions from 0 to 1 (and vice versa) to ensure that the timing recovery circuit within the receiver stays in synchronization. Hence, the scrambler is used to change the input bit stream in a controlled way to guarantee that the data contains enough transitions.
There are numerous advantages of data scrambling which are found in large variety of communications systems and applications. In some communications systems, however, such as voice-band modems, constant data patterns may produce unwanted tones that reduce the ability of the receiver to synchronize the transmitted signal. Yet, in other communications systems, such as those including packet-based orthogonal frequency division modulation (OFDM) modems, certain data patterns can produce symbols with a large peak to average power (PAP) ratio which suffer more degradation; and therefore, are more susceptible to errors. As a result, the data packet may not be received by the receiver. Even though the packet is retransmitted, the large PAP ratio of the symbol within the packet causes a large error probability. Standard scrambling techniques are used to ensure that the transmitted data between the initial transmission and retransmission are uncorrelated. To achieve this, the scrambler uses a different seed or variation for every transmission, hence, the term replay variation. One example of replay variation may be to simply add one to the seed after every transmission. Further, the length of the scrambling sequence has to be in the order of the number of bits per OFDM symbol to guarantee uncorrelated PAP ratios for different seeds. Different scrambling in every transmission will guarantee independent PAP ratios for the OFDM symbols in retransmissions; and hence, independent error probabilities. Although, symbol scrambling does not guarantee a PAP ratio below some low level, it does decrease the probability that large PAP ratios occur.
There are two common methods for scrambling data: synchronized scrambling and self-synchronizing scrambling. In synchronized scrambling or block scrambling, a framing pattern or other known means is used to manipulate the bits into some definable blocks of information. These bits are then exclusively OR'ed with a fixed pattern of bits synchronized to the boundaries of the block. An example of a framing pattern may comprise a scrambling sequence generated from a pseudo random sequence generator wherein the data to be transmitted is altered by the addition of the scrambling sequence on a symbol-by-symbol basis. Specifically, the scrambling sequence a pseudo-random number (PN) sequence. The addition of the PN sequence to the incoming data stream is defined over a symbol set representing a finite field (FF). In the binary symbol representation, addition is defined using an exclusive-or (XOR) operation. Since a pattern of scrambling bits is fixed with respect to the block, the same pattern can be used at the receiving end to unscramble the bits. Thus, descrambling occurs at the receiving side using the PN sequence which was employed at the transmitting side. Any bit error occuring in the transmission channel between the transmitter and the receiver will cause an error in that particular bit, but will not cause other bits to be in error, provided only that the receiver remains synchronized with the transmitter given the block boundaries. Thus, synchronized scrambling is beneficial in that it does not propagate transmission errors. The requirement that the transmitted scrambling sequence and the received scrambling sequence be synchronized, however, proves to be a disadvantage. Particularly, in systems that allow replay variation, since replay variation entails that transmission of identical data on two separate occasions will likely result in different sequences of transmission symbols.
To avoid the requirement of synchronizing the transmitting and receiving sides of a synchronized scrambler, a self-synchronizing scrambler may be implemented. In self-synchronizing scrambling, the bits at the transmitting end of a communication channel to be scrambled are passed through a scrambling feedback filter structure at the transmitter. More particularly, the bits at the transmitting end of a communication channel to be scrambled are passed through one input of a two input exclusive OR gate. The output of the gate is the output of the scrambler and also the input to an N-stage shift register which provides the feedback filter structure. This shift register is tapped at the Nth stage and/or one or more other stages, and the outputs of these taps are exclusively OR'ed together. The result of this exclusive OR operation is applied to the other input of the exclusive OR gate that has the data to be scrambled as the first input. The tap positions are chosen such that a polynomial represented by the tap weight is irreducible. This is also known as a primitive polynomial. The scrambled bits received at the receiving end of the communication channel to be descrambled are passed through a descrambling feedforward filter structure at the receiver. More particularly, the bits at the receiving end of a communication channel to be descrambled are passed through one input of a two input exclusive OR gate. The bits at the receiving end of the communcation channel to be descrambled are also passed through an N-stage shift register which provides a feedforward filter structure. This shift register is tapped at the Nth stage and/or one or more other stages, and the outputs of these taps are exclusively OR'ed together. The tap positions of the N-stage shift register are chosen such that the tap weights represent the same primitive polynomial of the feedback filter structure at the transmitting end of the communication channel. The result of this exclusive OR operation is applied to the other input of the exclusive OR gate that has the data to be descrambled as the first input. The result of this exclusive OR provides the output of the descrambler.
The feedback and feedforward filters are typically linear, time-invariant filters over the FF. The descrambling filter is required to operate on a sliding window of the received symbol sequence. For a linear descrambling filter, the output at any given time is a linear combination of the received symbols within the sliding window. Such a filter is commonly known as a moving average or finite impulse response (FIR) filter. The feedback-free constraint of the descrambling filter implies that a transmission error can affect the descrambler output only during the time that the error is within the window of the filter. Thus, self-synchronizing scrambling provides limited error propagation in that the possibility exists that an error can affect the descrambler output while it is within the window of the filter. The length of the descrambling window, however, limits the span of the possible error propagation. Thereby, self-synchronizing scrambling is advantageous in that the limited effect of an error exists when the descrambling filter has knowledge of the state of the scrambling filter.
In frame or packet based communications systems, such as systems in compliance with IEEE Standard 802.11 and HiperLAN WLANs, information that is to be transmitted is sent in fixed or variable length blocks with boundaries that synchronize at the transmitter and receiver. Synchronized scramblers are used to perform packet synchronization processing and guarantee the synchronization of the scrambling sequence generators. In systems that provide replay variation, however, it is not best to use the synchronized scrambler as previously described.
In a self-synchronizing scrambler, replay variation is implemented by varying the initial condition or value of the state of the scrambling sequence generator at the beginning of the packet. In order to properly descramble the data at the receiver, the initial condition of the scrambling sequence generator must be conveyed to the receiver. As such, information about the initial condition used by the transmitter is transmitted as an extra part of the packet. An error, however, may occur in the transmission of the initial condition information. This can lead to un-bounded (i.e. catastrophic) error propagation that corrupts the entire packet. In a system where any detected error in a packet results in rejection of the entire packet, the catastrophic error propagation problem will not have an effect upon the reliability of data transmission. However, if the data is protected by an error-correcting code, such as a Reed-Solomon code, the catastrophic error propagation will usually overload the error correcting capabilities of the code and render the error-correction mechanism useless.
In an effort to prevent this condition, replacing the synchronized scrambler with a self-synchronizing scrambler may prove useful. Unfortunately, this approach requires a change to the OFDM modulation scheme, and hence, the entire communication system which may prove costly. Thus, this approach is not desirable.
Thus, a need exists for a scrambler/descrambler pair that removes the possibility of catastrophic error due to improper transmission of initial condition information without disrupting the OFDM modulation scheme of a system that includes error-correction coding and replay variation.
The present invention is directed to overcoming, or at least reducing the effects of one or more of the problems set forth above.